type box<T>={
    name:T
}
let b:box<string>={
    name:'gfd'
}
//泛型，接口
interface result{
    status:number,
    data:string
}
let r:result={
    status:54,
    data:"as"
}
interface result1<T>{
    s:number,
    a:T
}
let r1:result1<string>={
    s:49,
    a:"dsf"
}
let r2:result1<{name:string,age:number}>={
    s:47,
    a:{
        name:"hs",
        age:38
    }
}

type result2<T>={
    name:T
}

let r3:result2<number>={
    name:12
}

type result3<T=unknown>={
    name:T
}
let r4:result3={
    name:"er"
}
